package com.zjb.datastructure;

import java.util.HashMap;
import java.util.Map;

public class Dync {
    public static void main(String[] args) {
        //int add = cache(10);
        //System.out.println(add + "--" + i);
        // add = dync(10);
        //System.out.println(add + "--" + i);
        ii[0] = 1;
        System.out.println(ii);
    }

    static  int i = 1;
    static Map<Integer, Integer> map = new HashMap<>();
    static int cache(int n) {


        i++;
        if (n == 1) {
            return 1;
        }
        if (n <= 0) {
            return 0;
        }
        if (map.containsKey(n)) {
            return map.get(n);
        }
        int add = cache(n - 1);
        int add1 = cache(n - 2);
        map.put(n - 1, add);
        map.put(n - 2, add1);
        return add + add1;
    }

    static int recurive(int n) {
        System.out.println("----"+i);
        i++;
        if (n == 1) {
            return 1;
        }
        if (n <= 0) {
            return 0;
        }
        int add = recurive(n - 1);
        int add1 = recurive(n - 2);
        return add + add1;
    }

    static int dync(int n) {
        int a = 1;
        int b = 2;
        int temp = 0;
        for (int j = 3; j < n; j++) {
            temp = a + b;
            a = b;
            b = temp;
        }
        return temp;
    }

    static int[] ii =new int[3];


}
